Next:
Memory_Kernel Interface
, Previous:
Synchronization_Kernel Interface
, Up:
Index
Data Copy_Kernel Interface
Data Copy
<asm/uaccess.h>
<linux/uaccess.h>
1. 사용자 공간과 커널 공간 사이에 데이터 복사
unsigned
long
copy_from_user
(
void
*
to
,
const
void
*
from
,
unsigned
long
n
)
;
unsigned
long
copy_to_user
(
void
*
to
,
const
void
*
from
,
unsigned
long
n
)
;
put_user
(
data
,
ptr
)
;
//macro
get_user
(
ptr
)
;
// macro
ptr이 가리키는 사용자 공간에 data를 전달(put)하거나 가져온다.(get)
ptr 타입에 따라서 복사할 데이터의 크기를 인식
커널 공간에서 사용자 공간의 메모리를 읽고 쓰는데 접근할 수 있는지를 검사하는 동작을 포함한다.
2. 메모리 값 설정
void
*
memset
(
void
*
s
,
char
c
,
size_t
count
)
;
//
메
모
리
s
에
c
를
count
만
큼
복
사